package com.example.springthymeleafproject.service;

import com.example.springthymeleafproject.model.Department;
import com.example.springthymeleafproject.model.Device;
import org.springframework.data.domain.Page;

import java.util.List;

public interface DeviceService {
    //获取所有设备
    List<Device> getAllDevice();

    //新增设备
    void saveDevice(Device device);

    //获取指定ID的的设备
    Device getDeviceId(long id);


    //删除指定ID的设备
    void deleteDeviceById(long id);


    //带有排序功能的分页
/*
    pageNO    页码
    pageSize  当前页面存放多少个数据
    sortField 排序的字段
    sortDirection 排序规则
    Page<Device> findDevicePaginated(int pageNo, int pageSize, String sortField, String sortDirection);
*/

    //带有排序、查询功能的分页
    Page<Device> searchDevicesPaginated(int pageNo, int pageSize, String sortField, String sortDirection, String deviceName);

    //带有排序、通过部门查设备的分页（通过输入部门id来查）
    Page<Device> searchDevicesByDepartmentIdPaginated(int pageNo, int pageSize, String sortField, String sortDirection, Long departmentId);
}
